package com.lry.util.mysql;

import lombok.Data;
import org.apache.commons.lang3.StringUtils;

/**
 * 表字段对象
 *
 * @author ALI
 * @date 2021/12/07
 */
@Data
public class ColumnInfo {

    /**
     * 字段名称
     */
    private String name;

    /**
     * 注释
     */
    private String comment;

    /**
     * 是否可为空
     */
    private Boolean nullable = false;

    /**
     * 是否唯一
     */
    private Boolean unique = false;

    /**
     * 是否主键
     */
    private Boolean primaryKey = false;

    /**
     * 字段类型
     */
    private String type;

    /**
     * 长度（存在1，或者6,2）
     */
    private String length;

    /**
     * 默认值
     */
    private Object defaultValue;

    public void setType(String type) {
        if (StringUtils.isNotBlank(type)) {
            int index = type.indexOf("(");
            if (index != -1) {
                this.type = type.substring(0, index);
                this.length = type.substring(index + 1, type.length() - 1);
            } else {
                this.type = type;
            }
        }
    }
}
